Vignetting refers to the phenomenon of brightness attenuation away from an image's center, and is an artifact that is prevalent in photography. Although perhaps not objectionable to the average viewer at low levels, it can significantly impair computer vision algorithms that rely on precise intensity data to analyze a scene. Applications in which vignetting distortions can be particularly damaging include photometric methods such as shape from shading, appearance-based techniques such as object recognition, and image mosaicing.
Several mechanisms may be responsible for vignetting effects. Some arise from the optical properties of camera lenses, the most prominent of which is off-axis illumination fall-off or the cos4 law. These contributions to vignetting result from foreshortening of the lens when viewed from increasing angles from the optical axis. Other sources of vignetting are geometric in nature. For example, light arriving at oblique angles to the optical axis may be partially obstructed by the field stop or lens rim.
To determine the vignetting effects in an image, the most straightforward approach involves capturing an image completely spanned by a uniform scene region, such that brightness variations can solely be attributed to vignetting. In such a calibration image, ratios of intensity with respect to the pixel on the optical axis describe the vignetting function. Suitable imaging conditions for this approach, however, can be challenging to produce due to uneven illumination and camera tilt, and the vignetting measurements are valid only for images captured by the camera under the same camera settings. Moreover, a calibration image can be recorded only if the camera is at hand; consequently, this approach cannot be used to correct images captured by unknown cameras, such as images downloaded from the web.
A vignetting function can alternatively be computed from image sequences with overlapping views of an arbitrary static scene. In this approach, point correspondences are first determined in the overlapping image regions. Since a given scene point has a different position in each image, its brightness may be differently attenuated by vignetting. From the aggregate attenuation information from all correspondences, the vignetting function can be accurately recovered without assumptions on the scene.
These previous approaches require either a collection of overlapping images or an image of a calibration scene. However, often in practice only a single image of an arbitrary scene is available. The previous techniques gain information for vignetting correction from pixels with equal scene radiance but differing attenuations of brightness. For a single arbitrary input image, this information becomes challenging to obtain, since it is difficult to identify pixels having the same scene radiance while differing appreciably in vignetting attenuation.